package com.mkl.ttxt.pd.service;

import com.mkl.ttxt.common.bo.TtxtResult;
import com.mkl.ttxt.pd.bo.Box;
import com.mkl.ttxt.pd.bo.Lineup;
import com.mkl.ttxt.pd.bo.Target;

import java.util.List;

public interface IPdService {
    void initMemberBox(Integer integer, Integer rank);

    Object getMemberBox(Integer userId);

    void updateBox(Box box, Integer userId);

    void addLineup(Lineup lineup, Integer userId);

    Object getAllLineup(Integer userId);

    Object getMember(Integer userId);

    Object getCard();

    void calPossibleLineUp(Integer userId);

    void calPossibleCompose(Integer userId);

    Object getAllSetMeal(Integer userId);

    Object getUserSetMeal(String userName, Integer userId);

    void calResult(List<Target> targetList, Integer userId) throws Exception;

    void subMemberCompose(Integer memberId, Integer lineupComposeId, Integer userId);

    void optimizePossibleCompose(Integer userId, Integer composeNum, Integer difComposeRepeat);

    void calComposeScore(Integer userId, Integer composeNum, Integer difComposeRepeat);

    TtxtResult calResultV2(List<Target> targetList, Integer userId) throws Exception;

    void calResultV3(List<Target> targetList, Integer userId);
}
